<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>XMP Toolkit SDK: AdobeXMPCore::IDOMParser_v1 Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="xmp_tagline_small.jpg"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">XMP Toolkit SDK
   &#160;<span id="projectnumber">6.0.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classAdobeXMPCore_1_1IDOMParser__v1.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classAdobeXMPCore_1_1IDOMParser__v1-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">AdobeXMPCore::IDOMParser_v1 Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p>Version 1 of the interface that supports parsing of the XMP Data Model.  
 <a href="classAdobeXMPCore_1_1IDOMParser__v1.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="IDOMParser_8h_source.html">IDOMParser.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for AdobeXMPCore::IDOMParser_v1:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classAdobeXMPCore_1_1IDOMParser__v1.png" usemap="#AdobeXMPCore::IDOMParser_5Fv1_map" alt=""/>
  <map id="AdobeXMPCore::IDOMParser_5Fv1_map" name="AdobeXMPCore::IDOMParser_5Fv1_map">
<area href="classAdobeXMPCommon_1_1IConfigurable.html" title="Interface that allows to attach various key-value parameters to the underlying object." alt="AdobeXMPCommon::IConfigurable" shape="rect" coords="0,0,212,24"/>
<area href="classAdobeXMPCommon_1_1ISharedObject.html" title="Interface that serves as the base interface of all the externally exposed interfaces." alt="AdobeXMPCommon::ISharedObject" shape="rect" coords="222,0,434,24"/>
<area href="classAdobeXMPCommon_1_1IVersionable.html" title="Interface that serves as the base interface for all the externally exposed interfaces which needs to ..." alt="AdobeXMPCommon::IVersionable" shape="rect" coords="444,0,656,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a9f311215532a5fa1d15a491fc7e71345"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">eActionType</a> { <br />
&#160;&#160;<a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a6ce0fb64b1a284951f50aacdf76e28b9">kATAppendAsChildren</a> = 0, 
<a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345ac19566553b38e9bf6c5361a8aa9bb181">kATReplaceChildren</a> = 1, 
<a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a720d171caeb649caf22e27ed4a39bd15">kATAppendOrReplaceChildren</a> = 2, 
<a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345aabbc604d77794e6cecedf1bdd947d252">kATInsertBefore</a> = 3, 
<br />
&#160;&#160;<a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a8fca6913cbd9d4f787e53fdcfb54f2bf">kATInsertAfter</a> = 4, 
<a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a2adb910039a572f5e73dbb94f680ed18">kATReplace</a> = 5
<br />
 }</td></tr>
<tr class="memdesc:a9f311215532a5fa1d15a491fc7e71345"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates various types of operations possible while parsing with some node as the context.  <a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">More...</a><br /></td></tr>
<tr class="separator:a9f311215532a5fa1d15a491fc7e71345"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classAdobeXMPCommon_1_1IConfigurable"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classAdobeXMPCommon_1_1IConfigurable')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html">AdobeXMPCommon::IConfigurable</a></td></tr>
<tr class="memitem:ad64e6ae45633298b7158be2b0dce79a1 inherit pub_types_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1">eDataType</a> { <br />
&#160;&#160;<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1a0233b4bacf60f59232fd3fc0dee50a27">kDTNone</a> = 0, 
<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1abdf14ab0f7a234fc99bc476dc4212f4e">kDTBool</a> = 1 &lt;&lt; 0, 
<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1ad24c2bb370f5fa12dee346051c13409e">kDTUint64</a> = 1 &lt;&lt; 1, 
<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1a5c57cf68bc47c55815b5bfc1146df0c3">kDTInt64</a> = 1 &lt;&lt; 2, 
<br />
&#160;&#160;<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1a01da29c7d11b67856b0e9d5f3fe4cdb4">kDTChar</a> = 1 &lt;&lt; 3, 
<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1a11c2a544d5ac467b22d7d10098237efa">kDTDouble</a> = 1 &lt;&lt; 4, 
<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1a8d6faef7e1737835b5007987ed99c48d">kDTConstCharBuffer</a> = 1 &lt;&lt; 5, 
<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1a242c98a52e8d324027a00ee6f66d4c39">kDTConstVoidPtr</a> = 1 &lt;&lt; 6, 
<br />
&#160;&#160;<a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1ac5217140bec2fb51971d31759f24b81a">kDTAll</a> = 0xFFFFFFFF
<br />
 }</td></tr>
<tr class="memdesc:ad64e6ae45633298b7158be2b0dce79a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indicates various types of parameter values.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1">More...</a><br /></td></tr>
<tr class="separator:ad64e6ae45633298b7158be2b0dce79a1 inherit pub_types_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:adc690f22fbc146bebb91366de7a8739e"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceAdobeXMPCore.html#a7f1de39fd79aeac4402eba73cb1ffe82">spIMetadata</a> APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#adc690f22fbc146bebb91366de7a8739e">Parse</a> (const char *buffer, <a class="el" href="namespaceAdobeXMPCommon.html#a1c85c2f558b495c3d41eabe692a96cf2">sizet</a> bufferLength)=0</td></tr>
<tr class="memdesc:adc690f22fbc146bebb91366de7a8739e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parses the buffer contents and creates an XMP DOM node.  <a href="classAdobeXMPCore_1_1IDOMParser__v1.html#adc690f22fbc146bebb91366de7a8739e">More...</a><br /></td></tr>
<tr class="separator:adc690f22fbc146bebb91366de7a8739e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad57596496a555684497ea918569df7d2"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#ad57596496a555684497ea918569df7d2">ParseWithSpecificAction</a> (const char *buffer, <a class="el" href="namespaceAdobeXMPCommon.html#a1c85c2f558b495c3d41eabe692a96cf2">sizet</a> bufferLength, <a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">eActionType</a> actionType, <a class="el" href="namespaceAdobeXMPCore.html#aeec2c711a611cbc3c77ef1a0bb026e33">spINode</a> &amp;node)=0</td></tr>
<tr class="memdesc:ad57596496a555684497ea918569df7d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Parse the buffer contents and populate the provided node .  <a href="classAdobeXMPCore_1_1IDOMParser__v1.html#ad57596496a555684497ea918569df7d2">More...</a><br /></td></tr>
<tr class="separator:ad57596496a555684497ea918569df7d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaaf363c4973c2ee1d86a019837bf1cb3"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceAdobeXMPCore.html#a737ec082bb4e7f817b45e073337c0893">spIDOMParser</a> APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#aaaf363c4973c2ee1d86a019837bf1cb3">Clone</a> () const =0</td></tr>
<tr class="memdesc:aaaf363c4973c2ee1d86a019837bf1cb3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Virtual copy constructor.  <a href="classAdobeXMPCore_1_1IDOMParser__v1.html#aaaf363c4973c2ee1d86a019837bf1cb3">More...</a><br /></td></tr>
<tr class="separator:aaaf363c4973c2ee1d86a019837bf1cb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAdobeXMPCommon_1_1IConfigurable')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html">AdobeXMPCommon::IConfigurable</a></td></tr>
<tr class="memitem:a046edf1c0c7d4f994295207dea1242f7 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a046edf1c0c7d4f994295207dea1242f7">RemoveParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key)=0</td></tr>
<tr class="memdesc:a046edf1c0c7d4f994295207dea1242f7 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Removes a particular parameter if present.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#a046edf1c0c7d4f994295207dea1242f7">More...</a><br /></td></tr>
<tr class="separator:a046edf1c0c7d4f994295207dea1242f7 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1ee6bed39650439dc4cbbc4d5e29689 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &gt; APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ac1ee6bed39650439dc4cbbc4d5e29689">GetAllParameters</a> () const =0</td></tr>
<tr class="memdesc:ac1ee6bed39650439dc4cbbc4d5e29689 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get all the keys of the parameters associated with the object.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#ac1ee6bed39650439dc4cbbc4d5e29689">More...</a><br /></td></tr>
<tr class="separator:ac1ee6bed39650439dc4cbbc4d5e29689 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2a1e1d3f515d431478ec309fa9dcd977 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceAdobeXMPCommon.html#a1c85c2f558b495c3d41eabe692a96cf2">sizet</a> APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a2a1e1d3f515d431478ec309fa9dcd977">Size</a> () const <a class="el" href="XMPCommonDefines_8h.html#a5a929113d3d50bda3fb7135a5c8b24a2">__NOTHROW__</a>=0</td></tr>
<tr class="memdesc:a2a1e1d3f515d431478ec309fa9dcd977 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of parameters associated with the object.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#a2a1e1d3f515d431478ec309fa9dcd977">More...</a><br /></td></tr>
<tr class="separator:a2a1e1d3f515d431478ec309fa9dcd977 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e36dbbb357fef76403e34603b54476e inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad64e6ae45633298b7158be2b0dce79a1">eDataType</a> APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a2e36dbbb357fef76403e34603b54476e">GetDataType</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key) const =0</td></tr>
<tr class="memdesc:a2e36dbbb357fef76403e34603b54476e inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value type of a particular parameter.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#a2e36dbbb357fef76403e34603b54476e">More...</a><br /></td></tr>
<tr class="separator:a2e36dbbb357fef76403e34603b54476e inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a174330a36f7e3d27cc0230698ff59313 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a174330a36f7e3d27cc0230698ff59313">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, bool value)=0</td></tr>
<tr class="memdesc:a174330a36f7e3d27cc0230698ff59313 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add/Change a value of a parameter.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#a174330a36f7e3d27cc0230698ff59313">More...</a><br /></td></tr>
<tr class="separator:a174330a36f7e3d27cc0230698ff59313 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc24d334364271934f6f8f1ac9051836 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#abc24d334364271934f6f8f1ac9051836">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> value)=0</td></tr>
<tr class="separator:abc24d334364271934f6f8f1ac9051836 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad248a17a9bc7ca1c189f353f62e829c4 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad248a17a9bc7ca1c189f353f62e829c4">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, <a class="el" href="namespaceAdobeXMPCommon.html#aee4f68e01de51c2cf1c1044ecafebc25">int64</a> value)=0</td></tr>
<tr class="separator:ad248a17a9bc7ca1c189f353f62e829c4 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad3b3acdbd19e5860d3e5c5cdcffeb016 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad3b3acdbd19e5860d3e5c5cdcffeb016">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, double value)=0</td></tr>
<tr class="separator:ad3b3acdbd19e5860d3e5c5cdcffeb016 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f5a64d500f2fd8110f31a2b582e0759 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a4f5a64d500f2fd8110f31a2b582e0759">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, char value)=0</td></tr>
<tr class="separator:a4f5a64d500f2fd8110f31a2b582e0759 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae3de9436a04fcd5f6f8bd21fcc9a9edd inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ae3de9436a04fcd5f6f8bd21fcc9a9edd">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, const char *value)=0</td></tr>
<tr class="separator:ae3de9436a04fcd5f6f8bd21fcc9a9edd inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75784001a19ac899764807095e648c70 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a75784001a19ac899764807095e648c70">SetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, const void *value)=0</td></tr>
<tr class="separator:a75784001a19ac899764807095e648c70 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d301e603f3842bae87983324f4a28c0 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a4d301e603f3842bae87983324f4a28c0">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, bool &amp;value) const =0</td></tr>
<tr class="memdesc:a4d301e603f3842bae87983324f4a28c0 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the value of a parameter if present.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#a4d301e603f3842bae87983324f4a28c0">More...</a><br /></td></tr>
<tr class="separator:a4d301e603f3842bae87983324f4a28c0 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90a82f84809f653eb73d880241529847 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a90a82f84809f653eb73d880241529847">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;value) const =0</td></tr>
<tr class="separator:a90a82f84809f653eb73d880241529847 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a316078de546c020ac473869994b1cfe9 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a316078de546c020ac473869994b1cfe9">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, <a class="el" href="namespaceAdobeXMPCommon.html#aee4f68e01de51c2cf1c1044ecafebc25">int64</a> &amp;value) const =0</td></tr>
<tr class="separator:a316078de546c020ac473869994b1cfe9 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a83027374893242e5f621439907d4d831 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a83027374893242e5f621439907d4d831">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, double &amp;value) const =0</td></tr>
<tr class="separator:a83027374893242e5f621439907d4d831 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9da31844f14815d4ed43df07d72b51f2 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a9da31844f14815d4ed43df07d72b51f2">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, char &amp;value) const =0</td></tr>
<tr class="separator:a9da31844f14815d4ed43df07d72b51f2 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7d6007647105ffe1962463fcad3917d inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ad7d6007647105ffe1962463fcad3917d">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, const char *&amp;value) const =0</td></tr>
<tr class="separator:ad7d6007647105ffe1962463fcad3917d inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac08b229f95afffae21e7dedae0d69fd0 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual bool APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#ac08b229f95afffae21e7dedae0d69fd0">GetParameter</a> (const <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a> &amp;key, const void *&amp;value) const =0</td></tr>
<tr class="separator:ac08b229f95afffae21e7dedae0d69fd0 inherit pub_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAdobeXMPCommon_1_1ISharedObject')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1ISharedObject.html">AdobeXMPCommon::ISharedObject</a></td></tr>
<tr class="memitem:ab90d4ec1fcd975a7ac62dcb866335cdc inherit pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1ISharedObject.html#ab90d4ec1fcd975a7ac62dcb866335cdc">Acquire</a> () const <a class="el" href="XMPCommonDefines_8h.html#a5a929113d3d50bda3fb7135a5c8b24a2">__NOTHROW__</a>=0</td></tr>
<tr class="memdesc:ab90d4ec1fcd975a7ac62dcb866335cdc inherit pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the clients of the object to indicate that he has acquired the shared ownership of the object.  <a href="classAdobeXMPCommon_1_1ISharedObject.html#ab90d4ec1fcd975a7ac62dcb866335cdc">More...</a><br /></td></tr>
<tr class="separator:ab90d4ec1fcd975a7ac62dcb866335cdc inherit pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf5a54e09f87366170ea19c618f68bc3 inherit pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memItemLeft" align="right" valign="top">virtual void APICALL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1ISharedObject.html#abf5a54e09f87366170ea19c618f68bc3">Release</a> () const <a class="el" href="XMPCommonDefines_8h.html#a5a929113d3d50bda3fb7135a5c8b24a2">__NOTHROW__</a>=0</td></tr>
<tr class="memdesc:abf5a54e09f87366170ea19c618f68bc3 inherit pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called by the clients of the object to indicate he has released his shared ownership of the object. If this being the last client than this function should call Destroy to delete and release the memory.  <a href="classAdobeXMPCommon_1_1ISharedObject.html#abf5a54e09f87366170ea19c618f68bc3">More...</a><br /></td></tr>
<tr class="separator:abf5a54e09f87366170ea19c618f68bc3 inherit pub_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classAdobeXMPCommon_1_1IVersionable"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classAdobeXMPCommon_1_1IVersionable')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1IVersionable.html">AdobeXMPCommon::IVersionable</a></td></tr>
<tr class="memitem:ad6539461695decfaea8a44798db51e54 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memTemplParams" colspan="2">template&lt;typename requestedInterface &gt; </td></tr>
<tr class="memitem:ad6539461695decfaea8a44798db51e54 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="XMP__Environment_8h.html#a917e8e3f02685ec390fa3aee270f7747">XMP_PRIVATE</a> requestedInterface *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IVersionable.html#ad6539461695decfaea8a44798db51e54">GetInterfacePointer</a> ()</td></tr>
<tr class="memdesc:ad6539461695decfaea8a44798db51e54 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the raw pointer to an interface object implementing the requested version.  <a href="classAdobeXMPCommon_1_1IVersionable.html#ad6539461695decfaea8a44798db51e54">More...</a><br /></td></tr>
<tr class="separator:ad6539461695decfaea8a44798db51e54 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1827fc276dd3beb0df9aaab4ad1626d0 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memTemplParams" colspan="2">template&lt;typename requestedInterface &gt; </td></tr>
<tr class="memitem:a1827fc276dd3beb0df9aaab4ad1626d0 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memTemplItemLeft" align="right" valign="top">const <a class="el" href="XMP__Environment_8h.html#a917e8e3f02685ec390fa3aee270f7747">XMP_PRIVATE</a> requestedInterface *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IVersionable.html#a1827fc276dd3beb0df9aaab4ad1626d0">GetInterfacePointer</a> () const</td></tr>
<tr class="memdesc:a1827fc276dd3beb0df9aaab4ad1626d0 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the raw pointer to a const interface object implementing the requested version.  <a href="classAdobeXMPCommon_1_1IVersionable.html#a1827fc276dd3beb0df9aaab4ad1626d0">More...</a><br /></td></tr>
<tr class="separator:a1827fc276dd3beb0df9aaab4ad1626d0 inherit pub_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a8cbde9bf86ebb4ef4a6968e39b601670"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a8cbde9bf86ebb4ef4a6968e39b601670">~IDOMParser_v1</a> () <a class="el" href="XMPCommonDefines_8h.html#a5a929113d3d50bda3fb7135a5c8b24a2">__NOTHROW__</a></td></tr>
<tr class="separator:a8cbde9bf86ebb4ef4a6968e39b601670"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classAdobeXMPCommon_1_1IConfigurable"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classAdobeXMPCommon_1_1IConfigurable')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html">AdobeXMPCommon::IConfigurable</a></td></tr>
<tr class="memitem:a7c19f627db3d07e227e93a6a0e6b20ab inherit pro_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a7c19f627db3d07e227e93a6a0e6b20ab">~IConfigurable</a> () <a class="el" href="XMPCommonDefines_8h.html#a5a929113d3d50bda3fb7135a5c8b24a2">__NOTHROW__</a></td></tr>
<tr class="separator:a7c19f627db3d07e227e93a6a0e6b20ab inherit pro_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abb69da6d73e4b56c30e56b43f5a37b9b inherit pro_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#abb69da6d73e4b56c30e56b43f5a37b9b">REQ_FRIEND_CLASS_DECLARATION</a> ()</td></tr>
<tr class="separator:abb69da6d73e4b56c30e56b43f5a37b9b inherit pro_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classAdobeXMPCommon_1_1ISharedObject"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classAdobeXMPCommon_1_1ISharedObject')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1ISharedObject.html">AdobeXMPCommon::ISharedObject</a></td></tr>
<tr class="memitem:a5869ff89d0b7dd0a7b525401a1d57b31 inherit pro_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1ISharedObject.html#a5869ff89d0b7dd0a7b525401a1d57b31">~ISharedObject</a> () <a class="el" href="XMPCommonDefines_8h.html#a5a929113d3d50bda3fb7135a5c8b24a2">__NOTHROW__</a>=0</td></tr>
<tr class="separator:a5869ff89d0b7dd0a7b525401a1d57b31 inherit pro_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afcb42109aed83c3b0c133bc413388037 inherit pro_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1ISharedObject.html#afcb42109aed83c3b0c133bc413388037">REQ_FRIEND_CLASS_DECLARATION</a> ()</td></tr>
<tr class="separator:afcb42109aed83c3b0c133bc413388037 inherit pro_methods_classAdobeXMPCommon_1_1ISharedObject"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classAdobeXMPCommon_1_1IVersionable"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classAdobeXMPCommon_1_1IVersionable')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1IVersionable.html">AdobeXMPCommon::IVersionable</a></td></tr>
<tr class="memitem:a3ccd9a1bdf7008906e094fb4e7f69826 inherit pro_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IVersionable.html#a3ccd9a1bdf7008906e094fb4e7f69826">~IVersionable</a> ()</td></tr>
<tr class="separator:a3ccd9a1bdf7008906e094fb4e7f69826 inherit pro_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac619a81b428c88cfce50feaa91a2479f inherit pro_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IVersionable.html#ac619a81b428c88cfce50feaa91a2479f">REQ_FRIEND_CLASS_DECLARATION</a> ()</td></tr>
<tr class="separator:ac619a81b428c88cfce50feaa91a2479f inherit pro_methods_classAdobeXMPCommon_1_1IVersionable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_static_methods_classAdobeXMPCommon_1_1IConfigurable"><td colspan="2" onclick="javascript:toggleInherit('pub_static_methods_classAdobeXMPCommon_1_1IConfigurable')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html">AdobeXMPCommon::IConfigurable</a></td></tr>
<tr class="memitem:a932bf0b8f4396de0e29f6c165954e5dc inherit pub_static_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="namespaceAdobeXMPCommon.html#aea1d692da07b844d1f642b47ea6a91bd">uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classAdobeXMPCommon_1_1IConfigurable.html#a932bf0b8f4396de0e29f6c165954e5dc">ConvertCharBufferToUint64</a> (const char *key)</td></tr>
<tr class="memdesc:a932bf0b8f4396de0e29f6c165954e5dc inherit pub_static_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="mdescLeft">&#160;</td><td class="mdescRight">Utility function to convert character buffer ( maximum of 8 characters ) to uint64 representation.  <a href="classAdobeXMPCommon_1_1IConfigurable.html#a932bf0b8f4396de0e29f6c165954e5dc">More...</a><br /></td></tr>
<tr class="separator:a932bf0b8f4396de0e29f6c165954e5dc inherit pub_static_methods_classAdobeXMPCommon_1_1IConfigurable"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Version 1 of the interface that supports parsing of the XMP Data Model. </p>
<p>Provides all functions to parse the buffer as well as to configure the parser. </p>

<p class="definition">Definition at line <a class="el" href="IDOMParser_8h_source.html#l00026">26</a> of file <a class="el" href="IDOMParser_8h_source.html">IDOMParser.h</a>.</p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a9f311215532a5fa1d15a491fc7e71345"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f311215532a5fa1d15a491fc7e71345">&#9670;&nbsp;</a></span>eActionType</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">AdobeXMPCore::IDOMParser_v1::eActionType</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Indicates various types of operations possible while parsing with some node as the context. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a9f311215532a5fa1d15a491fc7e71345a6ce0fb64b1a284951f50aacdf76e28b9"></a>kATAppendAsChildren&#160;</td><td class="fielddoc"><p>Append all the nodes parsed from the buffer as the child of the context node. </p>
<dl class="section attention"><dt>Attention</dt><dd>Error is thrown in case<ul>
<li>Context Node is invalid.</li>
<li>Context Node is not array or structure node.</li>
<li>Context Node is a structure node but a child node with the same qualified name is already present.</li>
<li>Context Node is an array node but the type of any parsed node is not same as that of other existing nodes in the array. </li>
</ul>
</dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a9f311215532a5fa1d15a491fc7e71345ac19566553b38e9bf6c5361a8aa9bb181"></a>kATReplaceChildren&#160;</td><td class="fielddoc"><p>Replaces the children of the context node with nodes parsed from the buffer. </p>
<dl class="section attention"><dt>Attention</dt><dd>Error is thrown in case<ul>
<li>Context Node is invalid.</li>
<li>Context Node is not array or structure node.</li>
<li>Context Node is a structure node but a child node with the same qualified name is not already present.</li>
<li>Context Node is an array node but the type of all parsed nodes are not same. </li>
</ul>
</dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a9f311215532a5fa1d15a491fc7e71345a720d171caeb649caf22e27ed4a39bd15"></a>kATAppendOrReplaceChildren&#160;</td><td class="fielddoc"><p>Either append all the nodes parsed from the buffer as the child/children of the context node. </p>
<dl class="section attention"><dt>Attention</dt><dd>Error is thrown in case<ul>
<li>Context Node is invalid.</li>
<li>Context Node is not array or structure node.</li>
<li>Context Node is an array node but the type of all parsed nodes are not same.</li>
</ul>
</dd></dl>
<ul>
<li>If a structure node is the parsed node, it is appended if it already not present, otherwise it is replaced.</li>
<li>If an array node is the parsed node, it is appended if it already not present, otherwise it is removed. </li>
</ul>
</td></tr>
<tr><td class="fieldname"><a id="a9f311215532a5fa1d15a491fc7e71345aabbc604d77794e6cecedf1bdd947d252"></a>kATInsertBefore&#160;</td><td class="fielddoc"><p>Treats all the parsed nodes as the siblings of the context node and place them before the context node, if possible. </p>
<dl class="section attention"><dt>Attention</dt><dd>Error is thrown in case<ul>
<li>Context Node is invalid.</li>
<li>parent of the Context Node is not an array node.</li>
<li>The type of any parsed nodes is not same as that of other existing nodes in the array. </li>
</ul>
</dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a9f311215532a5fa1d15a491fc7e71345a8fca6913cbd9d4f787e53fdcfb54f2bf"></a>kATInsertAfter&#160;</td><td class="fielddoc"><p>Treats all the parsed nodes as the siblings of the context node and place them after the context node, if possible. </p>
<dl class="section attention"><dt>Attention</dt><dd>Error is thrown in case<ul>
<li>Context Node is invalid.</li>
<li>parent of the Context Node is not an array node.</li>
<li>The type of any parsed nodes is not same as that of other existing nodes in the array. </li>
</ul>
</dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a9f311215532a5fa1d15a491fc7e71345a2adb910039a572f5e73dbb94f680ed18"></a>kATReplace&#160;</td><td class="fielddoc"><p>Replaces the context node and insert the node parsed from the buffer in its place. </p>
<dl class="section attention"><dt>Attention</dt><dd>Error is thrown in case<ul>
<li>type of node returned after parsing in not of type which is compatible with the Context Node. </li>
</ul>
</dd></dl>
</td></tr>
</table>

<p class="definition">Definition at line <a class="el" href="IDOMParser_8h_source.html#l00036">36</a> of file <a class="el" href="IDOMParser_8h_source.html">IDOMParser.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;                             {</div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;                        <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a6ce0fb64b1a284951f50aacdf76e28b9">kATAppendAsChildren</a>                             = 0,</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160; </div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;                        <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345ac19566553b38e9bf6c5361a8aa9bb181">kATReplaceChildren</a>                              = 1,</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;                        <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a720d171caeb649caf22e27ed4a39bd15">kATAppendOrReplaceChildren</a>              = 2,</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160; </div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;                        <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345aabbc604d77794e6cecedf1bdd947d252">kATInsertBefore</a>                                 = 3,</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;                        <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a8fca6913cbd9d4f787e53fdcfb54f2bf">kATInsertAfter</a>                                  = 4,</div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;                        <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a2adb910039a572f5e73dbb94f680ed18">kATReplace</a>                                              = 5,</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;                } <a class="code" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">eActionType</a>;</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a8cbde9bf86ebb4ef4a6968e39b601670"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8cbde9bf86ebb4ef4a6968e39b601670">&#9670;&nbsp;</a></span>~IDOMParser_v1()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual AdobeXMPCore::IDOMParser_v1::~IDOMParser_v1 </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Destructor </p>

<p class="definition">Definition at line <a class="el" href="IDOMParser_8h_source.html#l00167">167</a> of file <a class="el" href="IDOMParser_8h_source.html">IDOMParser.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;{}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aaaf363c4973c2ee1d86a019837bf1cb3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aaaf363c4973c2ee1d86a019837bf1cb3">&#9670;&nbsp;</a></span>Clone()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceAdobeXMPCore.html#a737ec082bb4e7f817b45e073337c0893">spIDOMParser</a> APICALL AdobeXMPCore::IDOMParser_v1::Clone </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Virtual copy constructor. </p>
<p>Creates an exact replica of the object. </p><dl class="section return"><dt>Returns</dt><dd>A shared pointer to an object of #IDOMParser which is the exact replica of the current serializer. </dd></dl>

</div>
</div>
<a id="adc690f22fbc146bebb91366de7a8739e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc690f22fbc146bebb91366de7a8739e">&#9670;&nbsp;</a></span>Parse()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceAdobeXMPCore.html#a7f1de39fd79aeac4402eba73cb1ffe82">spIMetadata</a> APICALL AdobeXMPCore::IDOMParser_v1::Parse </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceAdobeXMPCommon.html#a1c85c2f558b495c3d41eabe692a96cf2">sizet</a>&#160;</td>
          <td class="paramname"><em>bufferLength</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Parses the buffer contents and creates an XMP DOM node. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">buffer</td><td>Pointer to a constant char buffer containing serialized XMP Data Model. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bufferLength</td><td>Number of characters in buffer. In case name is null terminated set it to #<a class="el" href="namespaceAdobeXMPCommon.html#afc1bfa88991003b305ab5023b483d3f9">AdobeXMPCommon::npos</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A shared pointer to an object of #IMetadata containing all the information parsed from the buffer. </dd></dl>

</div>
</div>
<a id="ad57596496a555684497ea918569df7d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad57596496a555684497ea918569df7d2">&#9670;&nbsp;</a></span>ParseWithSpecificAction()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void APICALL AdobeXMPCore::IDOMParser_v1::ParseWithSpecificAction </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>buffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceAdobeXMPCommon.html#a1c85c2f558b495c3d41eabe692a96cf2">sizet</a>&#160;</td>
          <td class="paramname"><em>bufferLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">eActionType</a>&#160;</td>
          <td class="paramname"><em>actionType</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceAdobeXMPCore.html#aeec2c711a611cbc3c77ef1a0bb026e33">spINode</a> &amp;&#160;</td>
          <td class="paramname"><em>node</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Parse the buffer contents and populate the provided node . </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">buffer</td><td>Pointer to a constant char buffer containing serialized XMP Data Model. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">bufferLength</td><td>Number of characters in buffer. In case name is null terminated set it to #<a class="el" href="namespaceAdobeXMPCommon.html#afc1bfa88991003b305ab5023b483d3f9">AdobeXMPCommon::npos</a>. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">actionType</td><td>Value indicating how the parsed content and context node should be used. </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">node</td><td>The context node to be used base on the actionType. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>public/include/XMPCore/Interfaces/<a class="el" href="IDOMParser_8h_source.html">IDOMParser.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345a6ce0fb64b1a284951f50aacdf76e28b9"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a6ce0fb64b1a284951f50aacdf76e28b9">AdobeXMPCore::IDOMParser_v1::kATAppendAsChildren</a></div><div class="ttdeci">@ kATAppendAsChildren</div><div class="ttdoc">Append all the nodes parsed from the buffer as the child of the context node.</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00044">IDOMParser.h:44</a></div></div>
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345a8fca6913cbd9d4f787e53fdcfb54f2bf"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a8fca6913cbd9d4f787e53fdcfb54f2bf">AdobeXMPCore::IDOMParser_v1::kATInsertAfter</a></div><div class="ttdeci">@ kATInsertAfter</div><div class="ttdoc">Treats all the parsed nodes as the siblings of the context node and place them after the context node...</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00076">IDOMParser.h:76</a></div></div>
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345a2adb910039a572f5e73dbb94f680ed18"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a2adb910039a572f5e73dbb94f680ed18">AdobeXMPCore::IDOMParser_v1::kATReplace</a></div><div class="ttdeci">@ kATReplace</div><div class="ttdoc">Replaces the context node and insert the node parsed from the buffer in its place.</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00081">IDOMParser.h:81</a></div></div>
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345ac19566553b38e9bf6c5361a8aa9bb181"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345ac19566553b38e9bf6c5361a8aa9bb181">AdobeXMPCore::IDOMParser_v1::kATReplaceChildren</a></div><div class="ttdeci">@ kATReplaceChildren</div><div class="ttdoc">Replaces the children of the context node with nodes parsed from the buffer.</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00053">IDOMParser.h:53</a></div></div>
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345aabbc604d77794e6cecedf1bdd947d252"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345aabbc604d77794e6cecedf1bdd947d252">AdobeXMPCore::IDOMParser_v1::kATInsertBefore</a></div><div class="ttdeci">@ kATInsertBefore</div><div class="ttdoc">Treats all the parsed nodes as the siblings of the context node and place them before the context nod...</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00069">IDOMParser.h:69</a></div></div>
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345">AdobeXMPCore::IDOMParser_v1::eActionType</a></div><div class="ttdeci">eActionType</div><div class="ttdoc">Indicates various types of operations possible while parsing with some node as the context.</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00036">IDOMParser.h:36</a></div></div>
<div class="ttc" id="aclassAdobeXMPCore_1_1IDOMParser__v1_html_a9f311215532a5fa1d15a491fc7e71345a720d171caeb649caf22e27ed4a39bd15"><div class="ttname"><a href="classAdobeXMPCore_1_1IDOMParser__v1.html#a9f311215532a5fa1d15a491fc7e71345a720d171caeb649caf22e27ed4a39bd15">AdobeXMPCore::IDOMParser_v1::kATAppendOrReplaceChildren</a></div><div class="ttdeci">@ kATAppendOrReplaceChildren</div><div class="ttdoc">Either append all the nodes parsed from the buffer as the child/children of the context node.</div><div class="ttdef"><b>Definition:</b> <a href="IDOMParser_8h_source.html#l00062">IDOMParser.h:62</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespaceAdobeXMPCore.html">AdobeXMPCore</a></li><li class="navelem"><a class="el" href="classAdobeXMPCore_1_1IDOMParser__v1.html">IDOMParser_v1</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
  </ul>
</div>
</body>
</html>
